<template>
  <div class="rights_container">
    <!-- 面包屑导航 -->
    <el-breadcrumb separator-class="el-icon-arrow-right">
      <el-breadcrumb-item :to="{ path: '/home' }">首页</el-breadcrumb-item>
      <el-breadcrumb-item>权限管理</el-breadcrumb-item>
      <el-breadcrumb-item>权限列表</el-breadcrumb-item>
    </el-breadcrumb>
    <!-- 卡片视图区域 -->
    <el-card class="box-card">
      <!-- 权限管理列表区 border属性为表格添加垂直向边框线，stripe属性为表格添加隔行变色-->
      <el-table :data="rightsList" border style="width: 100%" stripe>
        <!--type="index"就为表格加了索引列，默认从1开始，就是给表格每个tr行在第一个td位置加上连续序号-->
        <el-table-column type="index" label="#"></el-table-column>
        <el-table-column prop="authName" label="权限名称"> </el-table-column>
        <el-table-column prop="path" label="路径"> </el-table-column>
        <el-table-column label="等级">
          <!--自定义插槽-->
          <template slot-scope="_item">
            <el-tag type="" v-if="_item.row.level === 0">一级</el-tag>
            <el-tag type="success" v-else-if="_item.row.level === 1"
              >二级</el-tag
            >
            <el-tag type="warning" v-else>三级</el-tag>
          </template>
        </el-table-column>
      </el-table>
    </el-card>
    <!-- <h3>这是Rights子组件</h3> -->
  </div>
</template>

<script>
export default {
  created() {
    this.getRightsList();
  },
  data() {
    return {
      // 权限列表数组
      rightsList: [],
      // 权限的类型，list或者tree，默认值为list，表示列表显示权限
      type: 'list'
    };
  },
  methods: {
    async getRightsList() {
      const { data: res } = await this.$http.get(`rights/${this.type}`);
      console.log(res);
      if (res.meta.status !== 200) return this.$message.error(res.meta.msg);
      this.rightsList = res.data;
      // 请求权限列表数据成功
      this.$message.success(res.meta.msg);
    }
  }
};
</script>

<style lang="less" scoped>
/* 权限列表表头样式，放在公共样式global.less中 */
</style>
